/**
 * 
 */
package No501_600.No511_520.CoinChange2_518;

import com.sun.javafx.css.CalculatedValue;

/** 
 * @author  作者 E-mail: ttljtw@qq.com
 * @date 创建时间：2017年2月20日 下午9:27:20 
 * @version 1.0 
 * @parameter  
 * @since  
 * @return  
 */
/**
 * @author 李敬
 *
 */
public class Solution {

	static int result = 0;
    public static int change(int amount, int[] coins) {
    	result = 0;
    	cal(amount, coins ,0 );
    	return result;
    }
    
    public static void cal(int amount, int[] coins,int start){
    	if(amount == 0){
            result++;
//    		System.out.println(amount+":"+result);
        }
        for(int i = start;i<coins.length;i++){
            if(amount>=coins[i]){
//            	System.out.print(coins[i]+" ");
                cal(amount-coins[i],coins,i);
            }
        }
    }
	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		System.out.println(Solution.change(500,new int[]{3,5,7,8,9,10,11}));
		System.out.println();
		System.out.println(Solution.change(3,new int[]{2}));
	}

}
